/*!
 * \file EventData.h
 * \brief Base class for events
 */

#ifndef EVENT_DATA_H
#define EVENT_DATA_H

#include <stdint.h>

namespace tsc
{
namespace common
{

typedef uint32_t SIGNO;

const SIGNO SIGNAL_BASE = 0x00150000;


/**
 * Base class for all events handled by generators
 */
class EventData
{
public:

	SIGNO sigNo() const;

	static void deleteEvent(EventData*& event);

    virtual ~EventData();

    EventData(const EventData& ed);

protected:
	EventData(SIGNO sigNo);

	SIGNO _sigNo;
};

} // namespace common
} // namespace tsc

#endif // EVENT_DATA_H
